package legumes.client.ui.widgets.form.item;

import com.smartgwt.client.widgets.form.fields.TextItem;
import com.smartgwt.client.widgets.form.validator.CustomValidator;
import com.smartgwt.client.widgets.form.validator.IsStringValidator;
import com.smartgwt.client.widgets.form.validator.LengthRangeValidator;

public class ProductNameFormItem extends TextItem {

	public ProductNameFormItem() {
		super("ProductName", "Produit");
        setWidth(80);
        setWrapTitle(false);
        setValue(14.50f);
        setEndRow(false);
        setValidateOnExit(true);
        //TODO Ask the server for an auto complete list item
        //TODO Create form Nouveau produit ?
        
        LengthRangeValidator lrv = new LengthRangeValidator();
        lrv.setMin(1);
        lrv.setMax(50);
        lrv.setErrorMessage("Saisir un nom entre 1 et 50 charact&egrave;res.");
        
        IsStringValidator isStringValidator = new IsStringValidator();
        isStringValidator.setErrorMessage("Veuillez saisir une chaines de caract&egrave;res.");

        CustomValidator cv = new CustomValidator(){

			@Override
			protected boolean condition(Object value) {
				// TODO Auto-generated method stub
				return value instanceof String && 
				value != null &&
				((String)value).trim().length()>0;
			}
        	
        };
        cv.setErrorMessage("Veuillez saisir au moins un caractère.");

        setValidators(isStringValidator, lrv, cv);
        
	}
}
